#ifndef COMMON_H
#define COMMON_H


#include <QSqlDatabase>
#include <QSqlError>//获取数据库操作的错误信息
#include <QSqlTableModel>
#include <QSqlQuery>
#include <QIcon>
#include <QDebug>
#include <QDialog>
#include <QMap>
#include <QVariant>
#include <QMessageBox>
#include <QDateTime>
#include <QRadioButton>
#include <QInputDialog>//引入输入对话框
#include <QHostAddress>
#include <QNetworkInterface>


static QSqlDatabase db;


//连接数据库
static QSqlDatabase connect1()
{
    //检查已安装的驱动
    qDebug() << "Available drivers:" << QSqlDatabase::drivers();

    //查看qt支持的驱动
    QStringList drivers = QSqlDatabase::drivers();
    qDebug() << drivers.join(",");

    //1，检查驱动
    if(!QSqlDatabase::isDriverAvailable("QODBC"))
    {
        qCritical()<<"ODBC驱动未加载";
        exit(1);
    }

    //2，创建一个全局的数据库连接
    QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");

    //3，指定SQL SERVER的ODBC驱动，服务器地址，访问的数据库名，用户名和密码
    QString dsn="DRIVER={ODBC Driver 17 for SQL Server};SERVER=127.0.0.1\\XG;DATABASE=VotingOnlineSystem;UID=sa;PWD=200599WJYwjy;";
    // 本地命名实例，默认端口

    db.setDatabaseName(dsn);

    //4，尝试打开连接
    if(!db.open())
    {
        qDebug() << "连接失败：";
        qDebug() << "错误代码：" << db.lastError().nativeErrorCode();
        qDebug() << "错误信息：" << db.lastError().text();
        exit(2);
    }
    else
    {
        qDebug()<<"数据库连接成功!!!";
    }
    return db;
}
#endif // COMMON_H
